/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package gestorvideoclub;

import gestorvideoclub.jdbc.PeliculaJDBC;
import gestorvideoclub.jdbc.ProductoJDBC;
import gestorvideoclub.jdbc.UbicacionJDBC;
import gestorvideoclub.jdbc.VideojuegoJDBC;
import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.List;

/**
 * Superclase de Tienda y Cajero
 *
 * @author Miguel Maestre
  */
public class Ubicacion {

    // Atributos
    private int tamano=399;//cajero de 400, pero le restamos la posicion de productos en tienda
    private int id;
    private int fila;
    private int columna;
    public boolean ocupado;
    public String posicionamiento; //guarda si esta en tienda o en cajero
    //el atributo "ocupado" nos dice si la posicion del cajero esta ocupada por un producto
    // Métodos
    // Constructores
    public Ubicacion() {
    }

    public Ubicacion(int fila, int columna, boolean ocup){
        this.fila = fila;
        this.columna = columna;
        this.ocupado = ocup;
    }
    public Ubicacion(String posicionamiento, int fila, int columna,boolean ocup) {
        this.posicionamiento = posicionamiento;
        this.fila = fila;
        this.columna = columna;
        this.ocupado = ocup;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public int getTamano() {
        return tamano;
    }

    // Get & Set
    
    public int getColumna() {
        return columna;
    }

    public void setPosicionamiento(String posicionamiento) {
        this.posicionamiento = posicionamiento;
    }

    public void setColumna(int columna) {
        this.columna = columna;
    }

    public void setOcupado(boolean ocupado) {
        this.ocupado = ocupado;
    }

    public boolean isOcupado() {
        return ocupado;
    }

    public int getFila() {
        return fila;
    }

    public String getPosicionamiento() {
        if(this.getFila()==-1 || this.getColumna()==-1)
            return "Tienda";
        else
            return "Cajero";
    }

    public void setFila(int fila) {
        this.fila = fila;
    }

   /*
    * metodo que te dice el numero de ubicaciones que quedan libres y ocupadas en el cajero.
    * 
    */
    public void consultaUbicacionesCajero(){
       int tamano= UbicacionJDBC.consultaUbicacionesCajero();
       int total = this.getTamano()-tamano;
       System.out.println("Ubicaciones Ocupadas: "+tamano);
       System.out.println("Ubicaciones Libres: "+total);
       
   }
    public void consultaUbicacionesTienda(){
       int tamano= UbicacionJDBC.consultaUbicacionesTienda();
       System.out.println("Productos en Tienda: "+tamano);
    }

    
    

}
